package com.wangp.procurement.service;

import com.wangp.procurement.dto.ProcurementManagementDto;
import com.wangp.procurement.vo.InsertManagementDTO;
import com.wangp.procurement.vo.ProcurementManagementVO;
import com.wangp.procurement.vo.UpsertProcurementManagementDTO;
import org.apache.ibatis.annotations.Param;

/**
 * 采购管理的业务层.
 *
 * @author WangPing2
 *<p>createDate 2024-11-17</p>
 **/
public interface ProcurementManagerService {


    /**
     * 采购管理--新增
     * @param  insertManagementDTO
     */
    void saveManageWithGoods(InsertManagementDTO insertManagementDTO);

    /**
     * 采购管理--查询详情
     * @param id
     * @return   ProcurementManagementVO
     */
    ProcurementManagementVO queryInfoById(@Param("id") Integer id);

    /**
     * 采购管理---失效
     * @param id
     * @return id
     */
    Integer disableInfo(Integer id);

    /**
     * 采购管理---列表
     * @param procurementManagementDto
     * @return
     */
    ProcurementManagementDto queryPage(ProcurementManagementDto procurementManagementDto);

    /**
     * 根据id 查询管理对应的货物
     * @param id
     * @return
     */
    UpsertProcurementManagementDTO getByIdWithGoods(Integer id);

    /**
     * 根据id修改管理信息和对应的货物信息
     * @param upsertProcurementManagementDTO
     */
    void updateWhitGoods(UpsertProcurementManagementDTO upsertProcurementManagementDTO);

    UpsertProcurementManagementDTO updateWhitGoodsNew(UpsertProcurementManagementDTO upsertProcurementManagementDTO);

/*
      //删除
    Integer deleteInfo(Integer id);*/
}
